// pages/funcs/incidentUpload/incidentUpload.js
Page({

    /**
     * 页面的初始数据
     */
    data: {
        timeFormat:'',//上报时间格式化
        time:null,//上报时间
        factoryName:'',//事故企业名称
        address:'',//事故地点
        accidentDetail:'',//事故经过及原因初步分析
        casualty:'',//伤亡人数
        rescueMeasure:'',//抢救措施
        rescureProgress:'',//进展
        longitude:0,//经度 用于在地图上显示当前位置
        latitude:0,//维度 用于在地图上显示当前位置
        fileList: [],//存储照片
    },
    //获取当前的地理位置
    getLocation(){
        wx.showLoading({
            title: "定位中",
            mask: true
        })
        //获取当前位置
        wx.getLocation({
            type: 'gcj02',
            altitude: true, //高精度定位
            //定位成功，更新定位结果
            success:(res)=>{
                this.setData({
                    longitude: res.longitude,
                    latitude: res.latitude
                })
            },
            //定位失败回调
            fail: function () {
                wx.showToast({
                    title: "定位失败",
                    icon: "none"
                })
            },
            //getLocation是异步请求,在complete下写获取到地理位置的逻辑，如果在success里面写会出现问题，如经纬度还没有设置，就调用了this.getAcutualAddress()函数，必然导致获取的位置不准确。
            complete:(res)=>{
                //隐藏定位中信息进度
                this.getAcutualAddress();
                wx.hideLoading();
            }
        }); 
    },
    //获取实际地址
    getAcutualAddress(){
        var getAddressUrl = "https://apis.map.qq.com/ws/geocoder/v1/?location=" + this.data.latitude + "," + this.data.longitude + "&key=A3SBZ-5A2W4-76LU5-DQ32V-QK4OJ-YAB7E&get_poi=1";
        console.log(getAddressUrl);
        wx.request({
          url: getAddressUrl,
          method:"GET",
          success:(res)=>{
              this.setData({
                  address:res.data.result.address
              });
          }
        });
    },
    //文件上传成功后
    afterRead(e){
        //获取file类
        const { file } = e.detail
        var img = {
            url:file.url
        }
        //更新fileList
        const { fileList = [] } = this.data;
        fileList.push(img);
        this.setData({ fileList });
    },
    //删除照片
    deleteImg(e){
        //获取下标
        var index = e.detail.index;
        var fileList = this.data.fileList;
        //删除该元素并写回appdata
        fileList.splice(index,1);
        this.setData({
            fileList
        })
    },

    //提交函数
    Add(){

    },
    //日期格式化
    formatDate(date){
        var Y = date.getFullYear();   //获取当前完整年份
        var M = date.getMonth() + 1;  //获取当前月份
        var D = date.getDate();   //获取当前日1-31
        var H = date.getHours();  //获取当前小时
        var i = date.getMinutes();    //获取当前分钟
        var s = date.getSeconds();    //获取当前秒数
        // 月份不足10补0
        if(M < 10){
            M = '0' + M;
        }
        // 日不足10补0
        if(D < 10){
            D = '0' + D;
        }
        // 小时不足10补0
        if(H < 10){
            H = '0' + H;
        }
        // 分钟不足10补0
        if(i < 10){
            i = '0' + i;
        }
        // 秒数不足10补0
        if(s < 10){
            s = '0' +s;
        }
        // 拼接日期分隔符根据自己的需要来修改
        var nowDate = Y+'-'+M+'-'+D+' '+H+':'+i+':'+s;
        return nowDate;
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        //初始化地址
        this.getLocation();
        //初始化时间
        var time = new Date();
        this.setData({
            time:time,
            timeFormat:this.formatDate(time)
        })
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})